Development setup

Development is done in Eclipse Mars for RCP and RAP Developers. Please work through this guide to correctly set up your development environment.

Eclipse plugins

Required Eclipse plugins are:

Building & Dependency Management

The project is built using Gradle 2.10. It can be downloaded here. Ubuntu users can use this PPA.

We use the default commands: gradle build (or simply gradle) to test and build, gradle test to only run tests. Run gradle tasks to see all available tasks.

Importing the Projects

Please import the root project through Buildship into Eclipse. Make sure to select “Specific Gradle version: 2.10”. This will import all subprojects as well:

Select File -> Import… Select Gradle Project Hit Next Select the Beagle root project Specify gradle 2.10 Check the settings and hit Finish

Please execute gradle now to set up all required files. You can do so by double-clicking on the “Beagle” project in the “Gradle Tasks” view.

Documentation

Parts of the documentation are written in LaTeX using LyX.

Installation

In order to render PDFs, the following steps need to be performed.

Ubuntu users can try to run the deployment install script at buildSrc/src/deploy/bash/Install Doc.sh, which will execute all installation steps detailed below. Please note thatwhile the script offers great convenience, it was written to be used on a continuous integration server and might hence make settings that are not optimal for a private computer.

You’ll obviously first need to install LyX and LaTeX.

Install the SDQ Template

Install Required Packages

A (small!) subset of the required LaTeX packages are:

If you care for the full list, look it up yourself in sdqthesis.cls, and the KIT template .sty files.

Ubuntu

Most required packages can be installed by installing thetexlive-latex-base, texlive-latex-recommended, texlive-latex-extra, texlive-fonts-extra, xindy, texlive-bibtex-extra and texlive-lang-german debian packages. However, uarial is not open source and must thus be downloaded and installed in an extra step. Run these commands:

sudo apt-get install texlive-latex-base texlive-latex-recommended texlive-latex-extra texlive-fonts-extra texlive-lang-german texlive-bibtex-extra xindy
wget https://tug.org/fonts/getnonfreefonts/install-getnonfreefonts
sudo texlua install-getnonfreefonts
sudo getnonfreefonts-sys arial-urw
rm install-getnonfreefonts
Windows

On Windows, you’ll likely use MiKTeX, which will install automatically all required packages automatically. However, you need to install Perl: ActivePerl. Make sure the checkbox “Add Perl to PATH”, which appears during the installation process, is checked.

Install UMLet

Spell checking

You may need to set the language in Tools -> Settings -> Language Settings -> Language to en to get English spell checking.

Markdown

Other parts are written in plain Markdown. The Eclipse GitHub Flavored Markdown viewer plugin for Eclipse helps writing it. (*Hint:* Don’t give the plugin your GitHub credentials. Create a personal access token and change the API URL in the plugin’s settings: https://api.github.com/?access_token=PERSONAL_ACCESS_TOKEN)

Continuous Integration

Beagle uses Travis, a continuous integration service. It tests Pull Requests as well as all branches in the repository whenever changes occur.

You can enable Travis for your repository, too. This allows you to have automated tests for all your commits. It further generates all documentation documents for new commits. This is quite handy for pull requests, as you can simply post a link to the rendered file, making the reviewing process a whole lot easier.

To activate Travis:

Get GitHub Personal Access Token

Activate Travis

Done!